﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HospitalAdmision
{
    class ValidaRut
    {
        private string rut;
        public string numero_f, numeroE, resultado;
        private int iNum, Suma;
        private int largo_NumeroE;
        int multiplicador = 2;
        public ValidaRut(string RUT) //Constructor, inicializa la variable
        {
            rut = RUT; //Se le asigna rut al parametro recibido 
            int largo = rut.Length - 1;
            numero_f = rut.Substring(largo, 1);
            numeroE = rut.Substring(0, largo - 1);
            largo_NumeroE = numeroE.Length;
            for (int i = largo_NumeroE; i >= 1; i--) //Realiza el calculo del RUN
            {
                iNum = int.Parse(numeroE.Substring(i - 1, 1));
                Suma = Suma + iNum * multiplicador;
                multiplicador++;
                if (multiplicador == 8)
                {
                    multiplicador = 2;
                }

            }
            resultado = Convert.ToString(11 - (Suma % 11)); //El valor obtenido se la asigna a resultado
                                                            //y lo convierte en String
            if (resultado == "10")
            {

                resultado = "k"; 
            }
            else if (resultado == "11")
            {
                resultado = "0";
            }

        }

        public Boolean verificarRut() //El metodo que verifica si el RUT es falso o es valido
        {
            if (resultado == numero_f)
            {
                return true; 
            }
            else
            {
                return false;
            }
        }
    }
}
